# Chapter 7. Other Mid-Range Database Engines

#### Contents:

What Is "Free"?
What MySQL and mSQL Lack
PostgreSQL
GNU SQL
Beagle
Making Comparisons

When mSQL first appeared on the scene, it was the only mid-range database engine supporting SQL. It did not hold that distinction very long. Of course, you already know about one other such database: MySQL. In the years since mSQL's introduction, however, a handful of mid-range database engines have been released. In this book, we have focused on MySQL and mSQL due to their overwhelming similarities and their unequalled popularity. It would, however, be an injustice to fail to mention the other databases out there.

People use databases for so many things that it is hard to capture all of the tools for all possible uses in one package. The major database vendors attempt that goal. They pay for it in terms of performance and you pay for it in terms of price. The low-end database engines, on the other hand, are so very specialized as to be of little use to the small business or nonprofit organization or anyone else with unusual needs. The mid-range database engines fill an important void between the two extremes.

At this point, we have only looked at two very similar views of meeting mid-range database requirements. These approaches are definitely not the only ones. There is no law, for example, that says just because you are not a big company that you do not need transaction support. Some users in the mid-range may also need triggers, subselects, stored procedures, object-oriented support, or any of a host of potential features -- they just do not need them all. The different mid-range database engines thus serve import needs that may not be served by MySQL or mSQL.

## 7.1. What Is "Free"?

You may occasionally hear people refer to MySQL and mSQL as being "free." When you hear people compare MySQL and mSQL, they may even make the claim that MySQL is "more free" than mSQL. Common sense chokes on the expression "more free." The software world, however, has actually invented the idea of "degrees of freeness."

Until now, we have been consciously avoiding discussing MySQL and mSQL as "free" database engines due to "free" being such a loaded term in the software world. Both engines may actually cost you money for a license. It depends on who you are. Under the licenses in play at the time of this book's printing, a university does not have to pay a licensing fee for either database engine. A commercial user of mSQL, however, must pay for a license. When people claim MySQL is "more free" than mSQL, what they mean is that MySQL costs nothing for more people than mSQL does.

Another issue that affects the concept of "free" in the software world has little to do with price. It has to do with the ability to view and modify the source code without paying extra. Under this model, both MySQL and mSQL are totally free database engines. You can go to their download sites and get them in source form. If you are one of those users who has to pay to use MySQL or mSQL, you do not have to pay any more for the source.

The software world has come up with a new term designed to get around the overloaded concept of "free". It is called Open Source. In fact, the term "Open Source" is now a trademark meaning software whose source code is open regardless of the charges associated with using the software. Linux, Netscape, FreeBSD, Perl, Apache, all GNU products, as well as many products in this book like MySQL, mSQL, mm.mysql.jdbc, and mSQL-JDBC (just to name a few) are all Open Source products.

The other database engines we mention in this chapter are also Open Source products. Open source is very important to the mid-range world because the big guys tend to view that market as too small to merit their attention and the low-end developers see the mid-range as too complicated to merit theirs.

Copyright © 2001 O'Reilly & Associates. All rights reserved.